//					FR Family SOFTUNE cpcom V65L08
	.program	"KEY_AD"
	.library	"lib911.lib"
	.library	"lib911smathfpu.lib"
#macro	__word_noalign	arg1
	.byte ((arg1)>>24)&0xFF,((arg1)>>16)&0xFF,((arg1)>>8)&0xFF,(arg1)&0xFF
#endm
#macro	__half_noalign	arg1
	.byte ((arg1)>>8)&0xFF,(arg1)&0xFF
#endm
	._LANGUAGE	C_FR20, N, U, F
	._FILE	"E:\AndyProject\MT750\MB91590Wsp_CloneLIB_MT750\MB91590Prj\CODE\APP\KEY\KEY_AD.c", 0
	._FILE	"CODE\APP\Menu\MenuFsm.h", 1
	._FILE	"CODE\APP\Menu\menu.h", 2
	._FILE	"E:\AndyProject\MT750\MB91590Wsp_CloneLIB_MT750\MB91590Prj\CODE\APP\KEY\key.h", 3
	._FILE	"E:\AndyProject\MT750\MB91590Wsp_CloneLIB_MT750\MB91590Prj\CODE\APP\KEY\key_AD.h", 4
	._FILE	"CODE\APP\message\message.h", 5
	._FILE	"CODE\Driver\DriveIncludes\ADC.h", 6
	._FILE	"CODE\Driver\DriveIncludes\BaseTimer.h", 7
	._FILE	"CODE\type.h", 8
	._FILE	"C:\Softune6\LIB\911\INCLUDE\stddef.h", 9
	._FILE	"C:\Softune6\LIB\911\INCLUDE\string.h", 10
	._FILE	"CODE\Driver\DriveIncludes\mb91590.h", 11
	._FILE	"CODE\Driver\DriveIncludes\_fr.h", 12
	._BTYPE	0x80000001, 1
	._BTYPE	0x80000002, 1
	._BTYPE	0x80000003, 2
	._BTYPE	0x80000004, 2
	._BTYPE	0x80000005, 4
	._BTYPE	0x80000006, 4
	._BTYPE	0x80000007, 4
	._BTYPE	0x80000008, 4
	._BTYPE	0x80000009, 1
	._BTYPE	0x8000000a, 2
	._BTYPE	0x8000000b, 4
	._BTYPE	0x8000000c, 8
	._BTYPE	0x8000000d, 8
	._BTYPE	0x8000000e, 1
	._BTYPE	0x8000000f, 0
	._BTYPE	0x80000010, 8
	._BTYPE	0x80000011, 8
	._MEMBER	S, 0x19, 4, S
	._SYMBOL	"keyIdx", M, 0x80000006, B, 0, 1, 0
	._SYMBOL	"keyStatus", M, 0x80000006, B, 0, 4, 1
	._MEMBER	E
	._MEMBER	S, 0x14, 28, S
	._SYMBOL	"pFx", M, 0x8000000f, S, 0, 4
	._POINTER	1
	._FPARAM	S, 3, F
	._SYMBOL	"", P, 0x8000000f, A, 0
	._POINTER	1
	._SYMBOL	"", P, 0x80000002, A, 0
	._SYMBOL	"", P, 0x80000002, A, 0
	._FPARAM	E
	._SYMBOL	"obj", M, 0x8000000f, S, 4, 4
	._POINTER	1
	._SYMBOL	"nHardKey_stru", M, 0x19, S, 8, 12
	._ARRAY	4, 1, 2, 0
	._SYMBOL	"nCurrKey", M, 0x80000002, S, 20, 1
	._SYMBOL	"nCurrKeyStatus", M, 0x80000002, S, 21, 1
	._SYMBOL	"nCurrKeyPressCnt", M, 0x80000005, S, 24, 4
	._MEMBER	E
	._MEMBER	S, 0x1a, 8, S
	._SYMBOL	"KeyValue", M, 0x1c, S, 0, 4
	._SYMBOL	"Status", M, 0x1e, S, 4, 4
	._MEMBER	E
	._SYMBOL	"KEY_OnEvent", Y, 0x8000000f
	._POINTER	1
	._FPARAM	S, 3, F
	._SYMBOL	"", P, 0x8000000f, A, 0
	._POINTER	1
	._SYMBOL	"", P, 0x80000002, A, 0
	._SYMBOL	"", P, 0x80000002, A, 0
	._FPARAM	E
	._SYMBOL	"__HardkKey_stru", G, 0x19, S
	._SYMBOL	"HardKey_stru", Y, 0x19
	._SYMBOL	"_key_ad_struct_", G, 0x14, S
	._SYMBOL	"Key_AD_Struct", Y, 0x14
	._MEMBER	S, 0x1c, 4, E
	._SYMBOL	"KeyAD_NULL", E, 0x80000005, 0
	._SYMBOL	"KeyAD_Left", E, 0x80000005, 1
	._SYMBOL	"KeyAD_Right", E, 0x80000005, 2
	._SYMBOL	"KeyAD_OK", E, 0x80000005, 3
	._SYMBOL	"KeyAD_Alone", E, 0x80000005, 4
	._MEMBER	E
	._SYMBOL	"__key_ad_group", G, 0x1c, E
	._SYMBOL	"Key_AD_Group", Y, 0x1c
	._MEMBER	S, 0x1e, 4, E
	._SYMBOL	"KeyAD_idle", E, 0x80000005, 0
	._SYMBOL	"KeyAD_pressed", E, 0x80000005, 1
	._SYMBOL	"KeyAD_release", E, 0x80000005, 2
	._SYMBOL	"KeyAD_middlePressed", E, 0x80000005, 3
	._SYMBOL	"KeyAD_middleRelease", E, 0x80000005, 4
	._SYMBOL	"KeyAD_longPressed", E, 0x80000005, 5
	._SYMBOL	"KeyAD_longRelease", E, 0x80000005, 6
	._SYMBOL	"KeyAD_longPressed_20s", E, 0x80000005, 7
	._MEMBER	E
	._SYMBOL	"__key_ad_Status", G, 0x1e, E
	._SYMBOL	"keyADStatus", Y, 0x1e
	._SYMBOL	"_key_ad_attr_", G, 0x1a, S
	._SYMBOL	"Key_AD_Attr", Y, 0x1a
	.global	_IO_PDR00
	.global	_IO_PDR01
	.global	_IO_PDR02
	.global	_IO_PDR03
	.global	_IO_PDR04
	.global	_IO_PDR05
	.global	_IO_PDR06
	.global	_IO_PDR07
	.global	_IO_PDR08
	.global	_IO_PDR09
	.global	_IO_PDR10
	.global	_IO_PDR11
	.global	_IO_PDR12
	.global	_IO_PDR13
	.global	_IO_PDRA
	.global	_IO_PDRB
	.global	_IO_PDRC
	.global	_IO_PDRD
	.global	_IO_PDRE
	.global	_IO_PDRF
	.global	_IO_PDRG
	.global	_IO_PDRH
	.global	_IO_WDTCR0
	.global	_IO_WDTCPR0
	.global	_IO_WDTCR1
	.global	_IO_WDTCPR1
	.global	_IO_DICR
	.global	_IO_TMRLRA0
	.global	_IO_TMR0
	.global	_IO_TMRLRB0
	.global	_IO_TMCSR0
	.global	_IO_BT0
	.global	_IO_BT1
	.global	_IO_BTSEL01
	.global	_IO_BTSSSR
	.global	_IO_AD
	.global	_IO_MFS0
	.global	_IO_MFS1
	.global	_IO_LIN_UART2
	.global	_IO_LIN_UART3
	.global	_IO_LIN_UART4
	.global	_IO_LIN_UART5
	.global	_IO_LIN_UART6
	.global	_IO_LIN_UART7
	.global	_IO_TMRLRA1
	.global	_IO_TMR1
	.global	_IO_TMRLRB1
	.global	_IO_TMCSR1
	.global	_IO_TMRLRA2
	.global	_IO_TMR2
	.global	_IO_TMRLRB2
	.global	_IO_TMCSR2
	.global	_IO_TMRLRA3
	.global	_IO_TMR3
	.global	_IO_TMRLRB3
	.global	_IO_TMCSR3
	.global	_IO_GCN13
	.global	_IO_GCN23
	.global	_IO_GCN14
	.global	_IO_GCN24
	.global	_IO_GCN15
	.global	_IO_GCN25
	.global	_IO_PTMR11
	.global	_IO_PCSR11
	.global	_IO_PDUT11
	.global	_IO_PCN11
	.global	_IO_PTMR12
	.global	_IO_PCSR12
	.global	_IO_PDUT12
	.global	_IO_PCN12
	.global	_IO_PTMR13
	.global	_IO_PCSR13
	.global	_IO_PDUT13
	.global	_IO_PCN13
	.global	_IO_PTMR14
	.global	_IO_PCSR14
	.global	_IO_PDUT14
	.global	_IO_PCN14
	.global	_IO_PTMR15
	.global	_IO_PCSR15
	.global	_IO_PDUT15
	.global	_IO_PCN15
	.global	_IO_PTMR16
	.global	_IO_PCSR16
	.global	_IO_PDUT16
	.global	_IO_PCN16
	.global	_IO_PTMR17
	.global	_IO_PCSR17
	.global	_IO_PDUT17
	.global	_IO_PCN17
	.global	_IO_PTMR18
	.global	_IO_PCSR18
	.global	_IO_PDUT18
	.global	_IO_PCN18
	.global	_IO_PTMR19
	.global	_IO_PCSR19
	.global	_IO_PDUT19
	.global	_IO_PCN19
	.global	_IO_PTMR20
	.global	_IO_PCSR20
	.global	_IO_PDUT20
	.global	_IO_PCN20
	.global	_IO_PTMR21
	.global	_IO_PCSR21
	.global	_IO_PDUT21
	.global	_IO_PCN21
	.global	_IO_PTMR22
	.global	_IO_PCSR22
	.global	_IO_PDUT22
	.global	_IO_PCN22
	.global	_IO_PTMR23
	.global	_IO_PCSR23
	.global	_IO_PDUT23
	.global	_IO_PCN23
	.global	_IO_PWC20
	.global	_IO_PWC10
	.global	_IO_PWC0
	.global	_IO_PWS20
	.global	_IO_PWS10
	.global	_IO_PWC21
	.global	_IO_PWC11
	.global	_IO_PWC1
	.global	_IO_PWS21
	.global	_IO_PWS11
	.global	_IO_PWC22
	.global	_IO_PWC12
	.global	_IO_PWC2
	.global	_IO_PWS22
	.global	_IO_PWS12
	.global	_IO_PWC23
	.global	_IO_PWC13
	.global	_IO_PWC3
	.global	_IO_PWS23
	.global	_IO_PWS13
	.global	_IO_PWC24
	.global	_IO_PWC14
	.global	_IO_PWC4
	.global	_IO_PWS24
	.global	_IO_PWS14
	.global	_IO_PWC25
	.global	_IO_PWC15
	.global	_IO_PWC5
	.global	_IO_PWS25
	.global	_IO_PWS15
	.global	_IO_FT0
	.global	_IO_FT1
	.global	_IO_GCN10
	.global	_IO_GCN20
	.global	_IO_GCN11
	.global	_IO_GCN21
	.global	_IO_GCN12
	.global	_IO_GCN22
	.global	_IO_PPGDIV
	.global	_IO_PTMR0
	.global	_IO_PCSR0
	.global	_IO_PDUT0
	.global	_IO_PCN0
	.global	_IO_PTMR1
	.global	_IO_PCSR1
	.global	_IO_PDUT1
	.global	_IO_PCN1
	.global	_IO_PTMR2
	.global	_IO_PCSR2
	.global	_IO_PDUT2
	.global	_IO_PCN2
	.global	_IO_PTMR3
	.global	_IO_PCSR3
	.global	_IO_PDUT3
	.global	_IO_PCN3
	.global	_IO_PTMR4
	.global	_IO_PCSR4
	.global	_IO_PDUT4
	.global	_IO_PCN4
	.global	_IO_PTMR5
	.global	_IO_PCSR5
	.global	_IO_PDUT5
	.global	_IO_PCN5
	.global	_IO_PTMR6
	.global	_IO_PCSR6
	.global	_IO_PDUT6
	.global	_IO_PCN6
	.global	_IO_PTMR7
	.global	_IO_PCSR7
	.global	_IO_PDUT7
	.global	_IO_PCN7
	.global	_IO_PTMR8
	.global	_IO_PCSR8
	.global	_IO_PDUT8
	.global	_IO_PCN8
	.global	_IO_PTMR9
	.global	_IO_PCSR9
	.global	_IO_PDUT9
	.global	_IO_PCN9
	.global	_IO_PTMR10
	.global	_IO_PCSR10
	.global	_IO_PDUT10
	.global	_IO_PCN10
	.global	_IO_IPCP0
	.global	_IO_IPCP1
	.global	_IO_ICFS01
	.global	_IO_LSYNS0
	.global	_IO_ICS01
	.global	_IO_IPCP2
	.global	_IO_IPCP3
	.global	_IO_ICFS23
	.global	_IO_ICS23
	.global	_IO_IPCP4
	.global	_IO_IPCP5
	.global	_IO_ICFS45
	.global	_IO_ICS45
	.global	_IO_OCCP0
	.global	_IO_OCCP1
	.global	_IO_OCFS01
	.global	_IO_OCS01
	.global	_IO_OCCP2
	.global	_IO_OCCP3
	.global	_IO_OCFS23
	.global	_IO_OCS23
	.global	_IO_MPU0
	.global	_IO_ICSEL0
	.global	_IO_ICSEL1
	.global	_IO_ICSEL2
	.global	_IO_ICSEL3
	.global	_IO_ICSEL4
	.global	_IO_ICSEL5
	.global	_IO_ICSEL6
	.global	_IO_ICSEL7
	.global	_IO_ICSEL8
	.global	_IO_ICSEL9
	.global	_IO_ICSEL10
	.global	_IO_ICSEL11
	.global	_IO_ICSEL12
	.global	_IO_ICSEL13
	.global	_IO_ICSEL14
	.global	_IO_ICSEL15
	.global	_IO_ICSEL16
	.global	_IO_ICSEL17
	.global	_IO_ICSEL18
	.global	_IO_ICSEL19
	.global	_IO_ICSEL20
	.global	_IO_ICSEL21
	.global	_IO_ICSEL22
	.global	_IO_IRPR0H
	.global	_IO_IRPR0L
	.global	_IO_IRPR1H
	.global	_IO_IRPR1L
	.global	_IO_IRPR2H
	.global	_IO_IRPR2L
	.global	_IO_IRPR3H
	.global	_IO_IRPR3L
	.global	_IO_IRPR4H
	.global	_IO_IRPR4L
	.global	_IO_IRPR5H
	.global	_IO_IRPR5L
	.global	_IO_IRPR6H
	.global	_IO_IRPR6L
	.global	_IO_IRPR7H
	.global	_IO_IRPR7L
	.global	_IO_IRPR8H
	.global	_IO_IRPR8L
	.global	_IO_IRPR9H
	.global	_IO_IRPR9L
	.global	_IO_IRPR12H
	.global	_IO_IRPR12L
	.global	_IO_IRPR13H
	.global	_IO_IRPR13L
	.global	_IO_IRPR14H
	.global	_IO_IRPR14L
	.global	_IO_IRPR15H
	.global	_IO_ICR
	.global	_IO_RSTRR
	.global	_IO_RSTCR
	.global	_IO_STBCR
	.global	_IO_DIVR0
	.global	_IO_DIVR1
	.global	_IO_DIVR2
	.global	_IO_IORR00
	.global	_IO_IORR01
	.global	_IO_IORR02
	.global	_IO_IORR03
	.global	_IO_IORR04
	.global	_IO_IORR05
	.global	_IO_IORR06
	.global	_IO_IORR07
	.global	_IO_IORR08
	.global	_IO_IORR09
	.global	_IO_IORR10
	.global	_IO_IORR11
	.global	_IO_IORR12
	.global	_IO_IORR13
	.global	_IO_IORR14
	.global	_IO_IORR15
	.global	_IO_CANPRE
	.global	_IO_CUCR0
	.global	_IO_CUTD0
	.global	_IO_CUTR0
	.global	_IO_CUCR1
	.global	_IO_CUTD1
	.global	_IO_CUTR1
	.global	_IO_CRTR
	.global	_IO_CLKG
	.global	_IO_CPUAR
	.global	_IO_CCTL
	.global	_IO_EIRR0
	.global	_IO_ENIR0
	.global	_IO_ELVR0
	.global	_IO_EIRR1
	.global	_IO_ENIR1
	.global	_IO_ELVR1
	.global	_IO_WTDR
	.global	_IO_WTCRH
	.global	_IO_WTCRM
	.global	_IO_WTCRL
	.global	_IO_WTBRH
	.global	_IO_WTBRM
	.global	_IO_WTBRL
	.global	_IO_WTHR
	.global	_IO_WTMR
	.global	_IO_WTSR
	.global	_IO_CSVCR
	.global	_IO_REGSEL
	.global	_IO_LVD5R
	.global	_IO_LVD5F
	.global	_IO_LVD
	.global	_IO_GLVD5R
	.global	_IO_GLVD5F
	.global	_IO_GLVD
	.global	_IO_PMUSTR
	.global	_IO_PMUCTLR
	.global	_IO_PWRTMCTL
	.global	_IO_PMUINTF0
	.global	_IO_PMUINTF1
	.global	_IO_PMUINTF2
	.global	_IO_GSTR
	.global	_IO_GCTLR
	.global	_IO_BPCCRA
	.global	_IO_BPCCRB
	.global	_IO_BPCCRC
	.global	_IO_BPCTRA
	.global	_IO_BPCTRB
	.global	_IO_BPCTRC
	.global	_IO_BMODR
	.global	_IO_FCTLR
	.global	_IO_FSTR
	.global	_IO_WREN
	.global	_IO_WR
	.global	_IO_UER
	.global	_IO_DCCR0
	.global	_IO_DCSR0
	.global	_IO_DTCR0
	.global	_IO_DSAR0
	.global	_IO_DDAR0
	.global	_IO_DCCR1
	.global	_IO_DCSR1
	.global	_IO_DTCR1
	.global	_IO_DSAR1
	.global	_IO_DDAR1
	.global	_IO_DCCR2
	.global	_IO_DCSR2
	.global	_IO_DTCR2
	.global	_IO_DSAR2
	.global	_IO_DDAR2
	.global	_IO_DCCR3
	.global	_IO_DCSR3
	.global	_IO_DTCR3
	.global	_IO_DSAR3
	.global	_IO_DDAR3
	.global	_IO_DCCR4
	.global	_IO_DCSR4
	.global	_IO_DTCR4
	.global	_IO_DSAR4
	.global	_IO_DDAR4
	.global	_IO_DCCR5
	.global	_IO_DCSR5
	.global	_IO_DTCR5
	.global	_IO_DSAR5
	.global	_IO_DDAR5
	.global	_IO_DCCR6
	.global	_IO_DCSR6
	.global	_IO_DTCR6
	.global	_IO_DSAR6
	.global	_IO_DDAR6
	.global	_IO_DCCR7
	.global	_IO_DCSR7
	.global	_IO_DTCR7
	.global	_IO_DSAR7
	.global	_IO_DDAR7
	.global	_IO_DCCR8
	.global	_IO_DCSR8
	.global	_IO_DTCR8
	.global	_IO_DSAR8
	.global	_IO_DDAR8
	.global	_IO_DCCR9
	.global	_IO_DCSR9
	.global	_IO_DTCR9
	.global	_IO_DSAR9
	.global	_IO_DDAR9
	.global	_IO_DCCR10
	.global	_IO_DCSR10
	.global	_IO_DTCR10
	.global	_IO_DSAR10
	.global	_IO_DDAR10
	.global	_IO_DCCR11
	.global	_IO_DCSR11
	.global	_IO_DTCR11
	.global	_IO_DSAR11
	.global	_IO_DDAR11
	.global	_IO_DCCR12
	.global	_IO_DCSR12
	.global	_IO_DTCR12
	.global	_IO_DSAR12
	.global	_IO_DDAR12
	.global	_IO_DCCR13
	.global	_IO_DCSR13
	.global	_IO_DTCR13
	.global	_IO_DSAR13
	.global	_IO_DDAR13
	.global	_IO_DCCR14
	.global	_IO_DCSR14
	.global	_IO_DTCR14
	.global	_IO_DSAR14
	.global	_IO_DDAR14
	.global	_IO_DCCR15
	.global	_IO_DCSR15
	.global	_IO_DTCR15
	.global	_IO_DSAR15
	.global	_IO_DDAR15
	.global	_IO_DNMIR
	.global	_IO_DILVR
	.global	_IO_DMACR
	.global	_IO_DDR00
	.global	_IO_DDR01
	.global	_IO_DDR02
	.global	_IO_DDR03
	.global	_IO_DDR04
	.global	_IO_DDR05
	.global	_IO_DDR06
	.global	_IO_DDR07
	.global	_IO_DDR08
	.global	_IO_DDR09
	.global	_IO_DDR10
	.global	_IO_DDR11
	.global	_IO_DDR12
	.global	_IO_DDR13
	.global	_IO_DDRA
	.global	_IO_DDRB
	.global	_IO_DDRC
	.global	_IO_DDRD
	.global	_IO_DDRE
	.global	_IO_DDRF
	.global	_IO_DDRG
	.global	_IO_DDRH
	.global	_IO_PFR00
	.global	_IO_PFR01
	.global	_IO_PFR02
	.global	_IO_PFR03
	.global	_IO_PFR04
	.global	_IO_PFR05
	.global	_IO_PFR06
	.global	_IO_PFR07
	.global	_IO_PFR08
	.global	_IO_PFR09
	.global	_IO_PFR10
	.global	_IO_PFR11
	.global	_IO_PFR12
	.global	_IO_PFR13
	.global	_IO_PFRA
	.global	_IO_PFRB
	.global	_IO_PFRC
	.global	_IO_PFRD
	.global	_IO_PFRE
	.global	_IO_PFRF
	.global	_IO_PFRG
	.global	_IO_PFRH
	.global	_IO_PDDR00
	.global	_IO_PDDR01
	.global	_IO_PDDR02
	.global	_IO_PDDR03
	.global	_IO_PDDR04
	.global	_IO_PDDR05
	.global	_IO_PDDR06
	.global	_IO_PDDR07
	.global	_IO_PDDR08
	.global	_IO_PDDR09
	.global	_IO_PDDR10
	.global	_IO_PDDR11
	.global	_IO_PDDR12
	.global	_IO_PDDR13
	.global	_IO_PDDRA
	.global	_IO_PDDRB
	.global	_IO_PDDRC
	.global	_IO_PDDRD
	.global	_IO_PDDRE
	.global	_IO_PDDRF
	.global	_IO_PDDRG
	.global	_IO_PDDRH
	.global	_IO_EPFR00
	.global	_IO_EPFR01
	.global	_IO_EPFR02
	.global	_IO_EPFR03
	.global	_IO_EPFR04
	.global	_IO_EPFR05
	.global	_IO_EPFR06
	.global	_IO_EPFR07
	.global	_IO_EPFR08
	.global	_IO_EPFR09
	.global	_IO_EPFR10
	.global	_IO_EPFR11
	.global	_IO_EPFR12
	.global	_IO_EPFR13
	.global	_IO_EPFR14
	.global	_IO_EPFR15
	.global	_IO_EPFR16
	.global	_IO_EPFR17
	.global	_IO_EPFR18
	.global	_IO_EPFR19
	.global	_IO_EPFR20
	.global	_IO_EPFR21
	.global	_IO_EPFR22
	.global	_IO_EPFR23
	.global	_IO_EPFR24
	.global	_IO_EPFR25
	.global	_IO_EPFR26
	.global	_IO_EPFR27
	.global	_IO_EPFR28
	.global	_IO_EPFR29
	.global	_IO_EPFR30
	.global	_IO_EPFR31
	.global	_IO_EPFR32
	.global	_IO_EPFR33
	.global	_IO_EPFR34
	.global	_IO_EPFR35
	.global	_IO_EPFR36
	.global	_IO_EPFR37
	.global	_IO_EPFR38
	.global	_IO_EPFR39
	.global	_IO_EPFR40
	.global	_IO_EPFR41
	.global	_IO_EPFR42
	.global	_IO_EPFR43
	.global	_IO_EPFR44
	.global	_IO_EPFR45
	.global	_IO_EPFR46
	.global	_IO_EPFR47
	.global	_IO_EPFR48
	.global	_IO_EPFR49
	.global	_IO_EPFR50
	.global	_IO_EPFR51
	.global	_IO_EPFR52
	.global	_IO_EPFR53
	.global	_IO_EPFR54
	.global	_IO_EPFR55
	.global	_IO_PPCR00
	.global	_IO_PPCR01
	.global	_IO_PPCR02
	.global	_IO_PPCR03
	.global	_IO_PPCR04
	.global	_IO_PPCR05
	.global	_IO_PPCR06
	.global	_IO_PPCR07
	.global	_IO_PPCR08
	.global	_IO_PPCR09
	.global	_IO_PPCR10
	.global	_IO_PPCR11
	.global	_IO_PPCR12
	.global	_IO_PPCR13
	.global	_IO_PPCRA
	.global	_IO_PPCRB
	.global	_IO_PPCRC
	.global	_IO_PPCRD
	.global	_IO_PPCRE
	.global	_IO_PPCRF
	.global	_IO_PPCRG
	.global	_IO_PPCRH
	.global	_IO_PPER00
	.global	_IO_PPER01
	.global	_IO_PPER02
	.global	_IO_PPER03
	.global	_IO_PPER04
	.global	_IO_PPER05
	.global	_IO_PPER06
	.global	_IO_PPER07
	.global	_IO_PPER08
	.global	_IO_PPER09
	.global	_IO_PPER10
	.global	_IO_PPER11
	.global	_IO_PPER12
	.global	_IO_PPER13
	.global	_IO_PPERA
	.global	_IO_PPERB
	.global	_IO_PPERC
	.global	_IO_PPERD
	.global	_IO_PPERE
	.global	_IO_PPERF
	.global	_IO_PPERG
	.global	_IO_PPERH
	.global	_IO_PILR00
	.global	_IO_PILR01
	.global	_IO_PILR02
	.global	_IO_PILR03
	.global	_IO_PILR04
	.global	_IO_PILR05
	.global	_IO_PILR06
	.global	_IO_PILR07
	.global	_IO_PILR08
	.global	_IO_PILR09
	.global	_IO_PILR10
	.global	_IO_PILR11
	.global	_IO_PILR12
	.global	_IO_PILR13
	.global	_IO_PILRA
	.global	_IO_PILRB
	.global	_IO_PILRC
	.global	_IO_PILRD
	.global	_IO_PILRE
	.global	_IO_PILRF
	.global	_IO_PILRG
	.global	_IO_PILRH
	.global	_IO_EPILR06
	.global	_IO_EPILR07
	.global	_IO_EPILR08
	.global	_IO_EPILR09
	.global	_IO_EPILR10
	.global	_IO_EPILR11
	.global	_IO_EPILR12
	.global	_IO_EPILR13
	.global	_IO_PODR06
	.global	_IO_PODR07
	.global	_IO_PODR08
	.global	_IO_PODR09
	.global	_IO_PODR10
	.global	_IO_PODR11
	.global	_IO_PODR12
	.global	_IO_PODR13
	.global	_IO_EPODR06
	.global	_IO_EPODR07
	.global	_IO_EPODR08
	.global	_IO_EPODRGD
	.global	_IO_EPODRGF
	.global	_IO_PORTEN
	.global	_IO_GDC
	.global	_IO_FT2
	.global	_IO_FT3
	.global	_IO_IPCP6
	.global	_IO_IPCP7
	.global	_IO_ICFS67
	.global	_IO_LSYNS1
	.global	_IO_ICS67
	.global	_IO_SACR
	.global	_IO_PICD
	.global	_IO_SGR0
	.global	_IO_SGR1
	.global	_IO_SGR2
	.global	_IO_SGR3
	.global	_IO_SGR4
	.global	_IO_CRCCR
	.global	_IO_CRCINIT
	.global	_IO_CRCIN
	.global	_IO_CRCR
	.global	_IO_CAN0
	.global	_IO_CAN1
	.global	_IO_CAN2
	.global	_IO_DFCTLR
	.global	_IO_DFSTR
	.global	_IO_FLIFCTLR
	.global	_IO_SEEARX
	.global	_IO_DEEARX
	.global	_IO_EECSRX
	.global	_IO_EFEARX
	.global	_IO_EFECRX
	.global	_IO_SEEARA
	.global	_IO_DEEARA
	.global	_IO_EECSRA
	.global	_IO_EFEARA
	.global	_IO_EFECRA
	.global	_IO_DSUCR
	.global	_IO_PCSR
	.global	_IO_PSSR
	.global	_IO_EDIR1
	.global	_IO_EDIR0
	.global	_Msg_Struct
	.global	_Menu_ReFlash
	.global	_Item
	.global	_ItemNum
	.global	_Menu_BackToFlag
	.global	_DispItem
	.global	_FatherIndex
	.global	_Layer
	.global	_KeyFuncIndex
	.global	_BmpMenuFlag
	.global	_MenuDotStatus
	.global	_ItemSelect
	.global	_ServiceCycleFlag
	.global	_ServiceCycleVaule
	.global	_KeyTab
	.global	_Fault_AutoMsgId
	.section	DATA, DATA, align=4
	.global	_Key_AD_Curr
	.align	4
_Key_AD_Curr:
	.res.b	8
	.global	_Key_AD_Handle
_Key_AD_Handle:
	.res.b	28
	.global	_Key_AD_ValueBuf
	.align	2
_Key_AD_ValueBuf:
	.res.b	14
	.section	INIT, DATA, align=4
	.align	4
_KEY_AD_Data_Copy:
	.word	0
	.global	_Key_Res_Data
	.align	2
_Key_Res_Data:
	.half	0
	.global	_Key_ADC_Data
_Key_ADC_Data:
	.half	0
	.global	_Key_AD_ValueBufNum
	.align	1
_Key_AD_ValueBufNum:
	.byte	0
_KEY_IntoNum:
	.byte	0
	.global	_Key_AD_Timer_Flag
_Key_AD_Timer_Flag:
	.byte	0
	.section	CONST, CONST, align=4
	.global	_Key_AD_Value
	.align	2
_Key_AD_Value:
	.half	0
	.half	390
	.half	1000
	.global	_FDetect_Calc_Average_Range
	.global	_Menu_KeyEnterSelect
	.global	_Adc_GetCh_Once
	.global	_Adc_OpenCh_Init
	.global	_Timer_start_periodic_every
	.global	_memset
	.section	CODE, CODE, align=2
	.global	_KEY_AD_Check_ISR_10ms
	._SYMBOL	"KEY_AD_Check_ISR_10ms", F, 0x8000000f, E, "_KEY_AD_Check_ISR_10ms", F
	._FPARAM	S, 2, F
	._SYMBOL	"id", P, 0x80000008, A, 8
	._SYMBOL	"pdata", P, 0x8000000f, A, 12
	._POINTER	1
	._FPARAM	E
	._CONFIG	S, F, 1
	._LINE	0, 82
_KEY_AD_Check_ISR_10ms:
L_20:
	STM	(R4,R5)
	ST	RP,@-SP
	ENTER	#4
;-------end_of_no_optimize_block
	._FUNCTION	"fp", "fp", 40
	._CONFIG	S, B
L_21:				// Pred: L_20
	._LINE	0, 84
	LDI:32	#_Key_AD_Timer_Flag,R1
	LDI	#1,R0
	STB	R0,@R1	; _Key_AD_Timer_Flag
L_22:				// Pred: L_21
	._LINE	0, 84
	._CONFIG	E
	._LINE	0, 85
	LEAVE
	LD	@SP+,RP
	ADDSP	#8
	RET
	._CONFIG	E
	._SYMBOL	"Get_Key_AD_Value", F, 0x8000000f, S, "_Get_Key_AD_Value", F
	._FPARAM	S, 3, F
	._SYMBOL	"obj", P, 0x8000000f, A, 8
	._POINTER	1
	._SYMBOL	"data", P, 0x80000002, A, 15
	._SYMBOL	"status", P, 0x80000002, A, 19
	._FPARAM	E
	._CONFIG	S, F, 1
	._LINE	0, 92
_Get_Key_AD_Value:
L_23:
	STM	(R4,R5,R6)
	ST	RP,@-SP
	ENTER	#4
;-------end_of_no_optimize_block
	._FUNCTION	"fp", "fp", 40
	._CONFIG	S, B
L_24:				// Pred: L_23
	._LINE	0, 94
	LD	@(FP,8),R2	; _obj
	LD	@(FP,8),R0	; _obj
	ST	R0,@(FP,8)	; _obj
	._LINE	0, 95
	LDUB	@(FP,15),R0	; _data
	LDI:32	#_Key_AD_Curr,R1
	ST	R0,@R1	; _Key_AD_Curr
	._LINE	0, 96
	LDUB	@(FP,19),R0	; _status
	LDI:32	#_Key_AD_Curr+4,R1
	ST	R0,@R1	; _Key_AD_Curr
L_25:				// Pred: L_24
	._LINE	0, 96
	._CONFIG	E
	._LINE	0, 97
	LEAVE
	LD	@SP+,RP
	ADDSP	#12
	RET
	._CONFIG	E
	.global	_Key_AD_Init
	._SYMBOL	"Key_AD_Init", F, 0x8000000f, E, "_Key_AD_Init", F
	._FPARAM	S, 0, F
	._FPARAM	E
	._CONFIG	S, F, 1
	._LINE	0, 104
_Key_AD_Init:
L_26:
	ST	RP,@-SP
	ENTER	#4
;-------end_of_no_optimize_block
	._FUNCTION	"fp", "fp", 16
	._CONFIG	S, B
L_27:				// Pred: L_26
	._LINE	0, 106
	LDI	#21,R4
	CALL21	_Adc_OpenCh_Init
	._LINE	0, 108
	LDI:32	#_Key_ADC_Data,R1
	LDI	#0,R0
	STH	R0,@R1	; _Key_ADC_Data
	._LINE	0, 109
	LDI:32	#_Get_Key_AD_Value,R0
	LDI:32	#_Key_AD_Handle,R1
	ST	R0,@R1	; _Key_AD_Handle
	._LINE	0, 110
	LDI:32	#_Key_AD_Curr,R0
	LDI	#0,R1
	ST	R1,@R0	; _Key_AD_Curr
	._LINE	0, 111
	LDI:32	#_Key_AD_Curr+4,R0
	LDI	#2,R1
	ST	R1,@R0	; _Key_AD_Curr
	._LINE	0, 113
	LDI:32	#_KEY_AD_Check_ISR_10ms,R4
	LDI	#0,R5
	LDI	#20,R6
	CALL21	_Timer_start_periodic_every
L_28:				// Pred: L_27
	._LINE	0, 113
	._CONFIG	E
	._LINE	0, 114
	LEAVE
	LD	@SP+,RP
	RET
	._CONFIG	E
	._SYMBOL	"KEY_OnData", F, 0x8000000f, S, "_KEY_OnData", F
	._FPARAM	S, 1, F
	._SYMBOL	"pKEY", P, 0x14, A, 8
	._POINTER	1
	._FPARAM	E
	._CONFIG	S, F, 1
	._LINE	0, 121
_KEY_OnData:
L_139:
	ST	R4,@-SP
	ST	RP,@-SP
	ENTER	#12
	STM	(R8)
;-------end_of_no_optimize_block
	._FUNCTION	"fp", "fp", 48
	._CONFIG	S, B
	._SYMBOL	"i", V, 0x80000005, A, -8
	._SYMBOL	"tempstate", V, 0x80000002, A, -1
L_140:				// Pred: L_139
	._LINE	0, 123
	._LINE	0, 124
	LDI	#0,R8
	STB	R8,@(FP,-1)	; _tempstate
	._LINE	0, 126
	LD	@(FP,8),R2	; _pKEY
	ADDN	#8,R2
	LD	@(FP,8),R0	; _pKEY
	LDI	#20,R13
	LDUB	@(R0,R13),R0
	LSL	#2,R0
	ADDN	R0,R2
	LD	@R2,R3
	LSR	#31,R3
	BEQ32	L_149,R12
L_141:				// Pred: L_140
	._LINE	0, 127
	._LINE	0, 128
	LD	@(FP,8),R0	; _pKEY
	LDUB	@(R0,R13),R0
	CMP	#3,R0
	BNE32	L_144,R12
L_142:				// Pred: L_141
	._LINE	0, 128
	LDI	#1,R4
	CALL21	_Menu_KeyEnterSelect
	CMP	#1,R4
	BNE32	L_144,R12
L_143:				// Pred: L_142
	._LINE	0, 129
	._LINE	0, 131
	BRA32	L_170,R12
L_144:				// Pred: L_142 L_141
	._LINE	0, 133
	._LINE	0, 134
	LD	@(FP,8),R0	; _pKEY
	LDI	#21,R13
	LDUB	@(R0,R13),R5
	CMP	#1,R5
	BEQ32	L_145,R12
L_192:				// Pred: L_144
	._LINE	0, 134
	CMP	#3,R5
	BEQ32	L_170,R12
L_193:				// Pred: L_192
	._LINE	0, 134
	CMP	#5,R5
L_148:				// Pred: L_193
	._LINE	0, 168
	._LINE	0, 169
	BRA32	L_170,R12
L_145:				// Pred: L_144
	._LINE	0, 137
	LD	@(FP,8),R0	; _pKEY
	LDI	#24,R13
	LD	@(R0,R13),R6
	ADDN	#1,R6
	LD	@(FP,8),R0	; _pKEY
	ST	R6,@(R0,R13)
	LDI	#20,R0
	CMP	R0,R6
	BNE32	L_170,R12
L_146:				// Pred: L_145
	._LINE	0, 137
	._LINE	0, 138
	LD	@(FP,8),R5	; _pKEY
	ADDN	#8,R5
	LD	@(FP,8),R0	; _pKEY
	LDI	#20,R13
	LDUB	@(R0,R13),R0
	LSL	#2,R0
	ADDN	R0,R5
	LD	@R5,R1
	LDI	#-2013265921,R0
	AND	R0,R1
	LDI	#24,R0
	LSL	#24,R0
	OR	R0,R1
	ST	R1,@R5
	._LINE	0, 139
	LD	@(FP,8),R0	; _pKEY
	LDI	#3,R1
	LDI	#21,R13
	STB	R1,@(R0,R13)
	._LINE	0, 141
	LD	@(FP,8),R0	; _pKEY
	LDI	#4,R13
	LD	@(R0,R13),R4
	LD	@(FP,8),R0	; _pKEY
	LDI	#20,R13
	LDUB	@(R0,R13),R5
	LD	@(FP,8),R0	; _pKEY
	LDI	#21,R13
	LDUB	@(R0,R13),R6
	LD	@(FP,8),R0	; _pKEY
	LD	@R0,R0
	CALL	@R0
	._LINE	0, 142
	._LINE	0, 142
	BRA32	L_170,R12
L_149:				// Pred: L_140
	._LINE	0, 171
	._LINE	0, 173
	LD	@(FP,8),R0	; _pKEY
	LDUB	@(R0,R13),R0
	CMP	#0,R0
	BEQ32	L_161,R12
L_150:				// Pred: L_149
	._LINE	0, 174
	._LINE	0, 175
	LD	@(FP,8),R0	; _pKEY
	LDI	#21,R13
	LDUB	@(R0,R13),R0
	CMP	#3,R0
	BNE32	L_152,R12
L_151:				// Pred: L_150
	._LINE	0, 175
	LDI	#4,R0
	STB	R0,@(FP,-1)	; _tempstate
	BRA32	L_159,R12
L_152:				// Pred: L_150
	._LINE	0, 176
	LD	@(FP,8),R0	; _pKEY
	LDUB	@(R0,R13),R0
	CMP	#5,R0
	BNE32	L_154,R12
L_153:				// Pred: L_152
	._LINE	0, 176
	LDI	#6,R0
	STB	R0,@(FP,-1)	; _tempstate
	BRA32	L_159,R12
L_154:				// Pred: L_152
	._LINE	0, 177
	LD	@(FP,8),R0	; _pKEY
	LDUB	@(R0,R13),R0
	CMP	#7,R0
	BNE32	L_156,R12
L_155:				// Pred: L_154
	._LINE	0, 177
	LDI	#6,R0
	STB	R0,@(FP,-1)	; _tempstate
	BRA32	L_159,R12
L_156:				// Pred: L_154
	._LINE	0, 178
	LDI	#2,R0
;-------volatile_access
	STB	R0,@(FP,-1)	; _tempstate
L_159:				// Pred: L_156 L_155 L_153 L_151
	._LINE	0, 179
	LD	@(FP,8),R0	; _pKEY
	LDI	#4,R13
	LD	@(R0,R13),R4
	LD	@(FP,8),R0	; _pKEY
	LDI	#20,R13
	LDUB	@(R0,R13),R5
	LDUB	@(FP,-1),R6	; _tempstate
	LD	@(FP,8),R0	; _pKEY
	LD	@R0,R0
	CALL	@R0
	._LINE	0, 180
	LD	@(FP,8),R1	; _pKEY
	ADDN	#8,R1
	LD	@(FP,8),R0	; _pKEY
	LDI	#20,R13
	LDUB	@(R0,R13),R0
	LSL	#2,R0
	ADDN	R0,R1
	LDI	#-2013265921,R0
	AND	R0,@R1
	._LINE	0, 181
	LD	@(FP,8),R0	; _pKEY
	STB	R8,@(R0,R13)
	._LINE	0, 182
L_161:				// Pred: L_159 L_149
	._LINE	0, 184
	LDI	#1,R0
	ST	R0,@(FP,-8)	; _i
	LD	@(FP,-8),R0	; _i
	CMP	#3,R0
	BGE32	L_170,R12
L_162:				// Pred: L_161
	._LINE	0, 184
L_163:				// Pred: L_168 L_162
	._LINE	0, 185
	._LINE	0, 186
	LD	@(FP,8),R4	; _pKEY
	ADDN	#8,R4
	LD	@(FP,-8),R0	; _i
	LSL	#2,R0
	ADDN	R0,R4
	LD	@R4,R6
	LSR	#31,R6
	BEQ32	L_166,R12
L_164:				// Pred: L_163
	._LINE	0, 186
	._LINE	0, 188
	LD	@(FP,8),R7	; _pKEY
	ADDN	#8,R7
	LD	@(FP,-8),R0	; _i
	LSL	#2,R0
	ADDN	R0,R7
	LD	@R7,R1
	LDI	#-2013265921,R0
	AND	R0,R1
	LDI	#8,R0
	LSL	#24,R0
	OR	R0,R1
	ST	R1,@R7
	._LINE	0, 189
	LD	@(FP,8),R1	; _pKEY
	LDI	#0,R0
	LDI	#24,R13
	ST	R0,@(R1,R13)
	._LINE	0, 190
	LD	@(FP,-8),R0	; _i
	LD	@(FP,8),R1	; _pKEY
	LDI	#20,R13
	STB	R0,@(R1,R13)
	._LINE	0, 191
	LD	@(FP,8),R0	; _pKEY
	LDI	#1,R1
	LDI	#21,R13
	STB	R1,@(R0,R13)
	._LINE	0, 193
	LD	@(FP,8),R0	; _pKEY
	LDI	#4,R13
	LD	@(R0,R13),R4
	LD	@(FP,-8),R5	; _i
	EXTUB	R5
	LD	@(FP,8),R0	; _pKEY
	LDI	#21,R13
	LDUB	@(R0,R13),R6
	LD	@(FP,8),R0	; _pKEY
	LD	@R0,R0
	CALL	@R0
	._LINE	0, 195
	LD	@(FP,-8),R0	; _i
	CMP	#3,R0
	BNE32	L_170,R12
L_165:				// Pred: L_164
	._LINE	0, 195
	LDI	#1,R4
	CALL21	_Menu_KeyEnterSelect
	._LINE	0, 196
	BRA32	L_170,R12
L_166:				// Pred: L_163
	._LINE	0, 198
	LD	@(FP,-8),R0	; _i
	ADDN	#1,R0
	ST	R0,@(FP,-8)	; _i
L_167:				// Pred: L_166
	._LINE	0, 184
	LD	@(FP,-8),R0	; _i
	CMP	#3,R0
	BGE32	L_170,R12
L_168:				// Pred: L_167
	._LINE	0, 199
	BRA32	L_163,R12
L_170:				// Pred: L_167 L_165 L_164 L_161
				//	 L_146 L_145 L_148 L_192
				//	 L_143
	._LINE	0, 201
	LD	@(FP,8),R4	; _pKEY
	ADDN	#8,R4
	LDI	#0,R5
	LDI	#12,R6
	CALL21	_memset
L_171:				// Pred: L_170
	._LINE	0, 201
	._CONFIG	E
	._LINE	0, 202
	LDM	(R8)
	LEAVE
	LD	@SP+,RP
	ADDSP	#4
	RET
	._CONFIG	E
	.global	_Key_AD_Detect
	._SYMBOL	"Key_AD_Detect", F, 0x8000000f, E, "_Key_AD_Detect", F
	._FPARAM	S, 2, F
	._SYMBOL	"obj", P, 0x14, A, 8
	._POINTER	1
	._SYMBOL	"data", P, 0x80000004, A, 14
	._FPARAM	E
	._CONFIG	S, F, 1
	._LINE	0, 216
_Key_AD_Detect:
L_173:
	STM	(R4,R5)
	ST	RP,@-SP
	ENTER	#12
;-------end_of_no_optimize_block
	._FUNCTION	"fp", "fp", 48
	._CONFIG	S, B
	._SYMBOL	"i", V, 0x80000002, A, -1
	._SYMBOL	"tempData", V, 0x80000008, A, -8
L_174:				// Pred: L_173
	._LINE	0, 218
	._LINE	0, 219
	LDI	#0,R0
	ST	R0,@(FP,-8)	; _tempData
	._LINE	0, 221
	LDUH	@(FP,14),R0	; _data
	LDI:32	#_KEY_AD_Data_Copy,R2
	LD	@R2,R1	; _KEY_AD_Data_Copy
	CMP	R1,R0
	BLS32	L_176,R12
L_175:				// Pred: L_174
	._LINE	0, 221
	LDUH	@(FP,14),R1	; _data
	LD	@R2,R0	; _KEY_AD_Data_Copy
	SUBN	R0,R1
	ST	R1,@(FP,-8)	; _tempData
	BRA32	L_177,R12
L_176:				// Pred: L_174
	._LINE	0, 222
	LDUH	@(FP,14),R0	; _data
	LD	@R2,R1	; _KEY_AD_Data_Copy
	SUBN	R0,R1
;-------volatile_access
	ST	R1,@(FP,-8)	; _tempData
L_177:				// Pred: L_176 L_175
	._LINE	0, 225
	LD	@(FP,-8),R0	; _tempData
	LDI	#65534,R1
	CMP	R1,R0
	BLS32	L_181,R12
L_178:				// Pred: L_177
	._LINE	0, 226
	._LINE	0, 227
	LDI:32	#_KEY_IntoNum,R5
	LDUB	@R5,R0	; _KEY_IntoNum
	ADDN	#1,R0
	STB	R0,@R5	; _KEY_IntoNum
	._LINE	0, 228
	LDUB	@R5,R0	; _KEY_IntoNum
	CMP	#1,R0
	BLE32	L_190,R12
L_179:				// Pred: L_178
	._LINE	0, 229
	._LINE	0, 230
	LDUH	@(FP,14),R0	; _data
	ST	R0,@R2	; _KEY_AD_Data_Copy
	._LINE	0, 231
	LDI	#0,R0
	STB	R0,@R5	; _KEY_IntoNum
	._LINE	0, 232
	._LINE	0, 233
	BRA32	L_190,R12
L_181:				// Pred: L_177
	._LINE	0, 238
	LDI	#1,R0
	STB	R0,@(FP,-1)	; _i
	LDUB	@(FP,-1),R0	; _i
	CMP	#3,R0
	BGE32	L_189,R12
L_182:				// Pred: L_181
	._LINE	0, 238
	LDI:32	#_Key_AD_Value,R3
L_183:				// Pred: L_187 L_182
	._LINE	0, 239
	._LINE	0, 240
	LDUH	@(FP,14),R6	; _data
	LDUB	@(FP,-1),R13	; _i
	LSL	#1,R13
	LDUH	@(R3,R13),R0	; _Key_AD_Value
	LDI	#150,R5
	SUBN	R5,R0
	CMP	R0,R6
	BLE32	L_186,R12
L_184:				// Pred: L_183
	._LINE	0, 240
	LDUH	@(FP,14),R4	; _data
	LDUB	@(FP,-1),R13	; _i
	LSL	#1,R13
	LDUH	@(R3,R13),R0	; _Key_AD_Value
	ADDN	R5,R0
	CMP	R0,R4
	BGE32	L_186,R12
L_185:				// Pred: L_184
	._LINE	0, 241
	._LINE	0, 242
	LD	@(FP,8),R7	; _obj
	ADDN	#8,R7
	LDUB	@(FP,-1),R0	; _i
	LSL	#2,R0
	ADDN	R0,R7
	LDI	#128,R0
	LSL	#24,R0
	OR	R0,@R7
	._LINE	0, 243
	BRA32	L_189,R12
L_186:				// Pred: L_184 L_183
	._LINE	0, 245
	LDUB	@(FP,-1),R0	; _i
	ADDN	#1,R0
	STB	R0,@(FP,-1)	; _i
L_187:				// Pred: L_186
	._LINE	0, 238
	LDUB	@(FP,-1),R0	; _i
	CMP	#3,R0
	BLT32	L_183,R12
L_188:				// Pred: L_187
	._LINE	0, 246
L_189:				// Pred: L_188 L_185 L_181
	._LINE	0, 246
	LD	@(FP,8),R4	; _obj
	CALL21	_KEY_OnData
	._LINE	0, 247
	._LINE	0, 247
L_190:				// Pred: L_189 L_179 L_178
	._LINE	0, 247
	._CONFIG	E
	._LINE	0, 248
	LEAVE
	LD	@SP+,RP
	ADDSP	#8
	RET
	._CONFIG	E
	.global	_Key_AD_Loop
	._SYMBOL	"Key_AD_Loop", F, 0x8000000f, E, "_Key_AD_Loop", F
	._FPARAM	S, 0, F
	._FPARAM	E
	._CONFIG	S, F, 1
	._LINE	0, 257
_Key_AD_Loop:
L_90:
	ST	RP,@-SP
	ENTER	#16
	STM	(R8,R9,R10)
;-------end_of_no_optimize_block
	._FUNCTION	"fp", "fp", 32
	._CONFIG	S, B
	._SYMBOL	"tempvalue", V, 0x8000000b, A, -12
	._SYMBOL	"tempCalc", V, 0x8000000b, A, -8
	._SYMBOL	"tmpdata", V, 0x80000004, A, -4
	._SYMBOL	"tmpoffset", V, 0x80000004, A, -2
L_91:				// Pred: L_90
	._LINE	0, 259
	._LINE	0, 259
	LDI	#0,R0
	ST	R0,@(FP,-12)	; _tempvalue
	._LINE	0, 260
	ST	R0,@(FP,-8)	; _tempCalc
	._LINE	0, 261
	LDI	#0,R0
	STH	R0,@(FP,-4)	; _tmpdata
	._LINE	0, 262
	STH	R0,@(FP,-2)	; _tmpoffset
	._LINE	0, 264
	LDI:32	#_Key_AD_Timer_Flag,R2
	LDUB	@R2,R0	; _Key_AD_Timer_Flag
	CMP	#0,R0
	BEQ32	L_101,R12
L_92:				// Pred: L_91
	._LINE	0, 265
	._LINE	0, 266
	LDI	#0,R10
	STB	R10,@R2	; _Key_AD_Timer_Flag
	._LINE	0, 268
	LDI	#21,R4
	CALL21	_Adc_GetCh_Once
	LDI:32	#_Key_ADC_Data,R9
	STH	R4,@R9	; _Key_ADC_Data
	._LINE	0, 270
	LDI:32	#_Key_AD_ValueBufNum,R1
	LDUB	@R1,R13	; _Key_AD_ValueBufNum
	MOV	R13,R0
	ADDN	#1,R0
	STB	R0,@R1	; _Key_AD_ValueBufNum
	LSL	#1,R13
	LDUH	@R9,R0	; _Key_ADC_Data
	LDI:32	#_Key_AD_ValueBuf,R4
	STH	R0,@(R4,R13)	; _Key_AD_ValueBuf
	._LINE	0, 272
	LDUB	@R1,R0	; _Key_AD_ValueBufNum
	CMP	#5,R0
	BLT32	L_101,R12
L_94:				// Pred: L_92
	._LINE	0, 273
	._LINE	0, 274
	STB	R10,@R1	; _Key_AD_ValueBufNum
	._LINE	0, 275
	LDI	#5,R5
	LDI	#1,R6
	LDI	#4,R7
	CALL21	_FDetect_Calc_Average_Range
	STH	R4,@(FP,-4)	; _tmpdata
	._LINE	0, 276
	LDUH	@(FP,-4),R0	; _tmpdata
	LDUH	@R9,R1	; _Key_ADC_Data
	CMP	R1,R0
	BLE32	L_97,R12
L_96:				// Pred: L_94
	._LINE	0, 276
	LDUH	@(FP,-4),R1	; _tmpdata
	LDUH	@R9,R0	; _Key_ADC_Data
	SUBN	R0,R1
	EXTUH	R1
	STH	R1,@(FP,-2)	; _tmpoffset
	BRA32	L_98,R12
L_97:				// Pred: L_94
	._LINE	0, 277
	LDUH	@R9,R1	; _Key_ADC_Data
	LDUH	@(FP,-4),R0	; _tmpdata
	SUBN	R0,R1
	EXTUH	R1
;-------volatile_access
	STH	R1,@(FP,-2)	; _tmpoffset
L_98:				// Pred: L_97 L_96
	._LINE	0, 279
	LDUH	@(FP,-2),R0	; _tmpoffset
	LDI	#50,R1
	CMP	R1,R0
	BLE32	L_102,R12
L_99:				// Pred: L_98
	._LINE	0, 279
	BRA32	L_101,R12
L_102:				// Pred: L_98
	._LINE	0, 286
	LDI:32	#_Key_Res_Data,R8
	LDI	#65533,R0
	STH	R0,@R8	; _Key_Res_Data
	._LINE	0, 287
	LDUH	@R9,R0	; _Key_ADC_Data
	LDI	#1022,R1
	CMP	R1,R0
	BLE32	L_104,R12
L_103:				// Pred: L_102
	._LINE	0, 287
	LDI	#65534,R0
	STH	R0,@R8	; _Key_Res_Data
	BRA32	L_105,R12
L_104:				// Pred: L_102
	._LINE	0, 289
	._LINE	0, 290
	LDUH	@(FP,-4),R0	; _tmpdata
	MOV	R0,FR0
	FiTOs	FR0,FR0
	FST	FR0,@(FP,-12)	; _tempvalue
	._LINE	0, 292
	LD	@(FP,-12),R4	; _tempvalue
	CALL21	__ftod
	MOV	R5,R7
	MOV	R4,R6
	LDI	#1075021086,R4
	LDI	#-1202590843,R5
	CALL21	__muld
	CALL21	__dtof
	MOV	R4,FR0
	FST	FR0,@(FP,-8)	; _tempCalc
	._LINE	0, 294
	FLD	@(FP,-8),FR1	; _tempCalc
	LDI	#1167867904,R0
	MOV	R0,FR0
	FCMPs	FR0,FR1
	FBULE32	L_105,R12
L_106:				// Pred: L_104
	._LINE	0, 295
	._LINE	0, 298
	LD	@(FP,-12),R4	; _tempvalue
	CALL21	__ftod
	MOV	R5,R7
	MOV	R4,R6
	LDI	#1085729049,R4
	LDI	#-1717986918,R5
	CALL21	__muld
	MOV	R5,R10
	MOV	R4,R9
	LD	@(FP,-12),R4	; _tempvalue
	CALL21	__ftod
	MOV	R5,R7
	MOV	R4,R6
	LDI	#1075021086,R4
	LDI	#-1202590843,R5
	CALL21	__muld
	MOV	R5,R7
	MOV	R4,R6
	LDI	#1085507584,R4
	LDI	#0,R5
	CALL21	__subd
	MOV	R5,R7
	MOV	R4,R6
	MOV	R9,R4
	MOV	R10,R5
	CALL21	__divd
	CALL21	__dtoi
	EXTUH	R4
	STH	R4,@R8	; _Key_Res_Data
	._LINE	0, 299
L_105:				// Pred: L_106 L_104 L_103
	._LINE	0, 301
	LDI:32	#_Key_AD_Handle,R4
	LDUH	@R8,R5	; _Key_Res_Data
	CALL21	_Key_AD_Detect
	._LINE	0, 302
L_101:				// Pred: L_105 L_99 L_92 L_91
	._LINE	0, 302
	._CONFIG	E
	._LINE	0, 303
	LDM	(R8,R9,R10)
	LEAVE
	LD	@SP+,RP
	RET
	._CONFIG	E
	.global	_Key_AD_Scan
	._SYMBOL	"Key_AD_Scan", F, 0x80000002, E, "_Key_AD_Scan", F
	._FPARAM	S, 1, F
	._SYMBOL	"attr", P, 0x1a, A, 8
	._POINTER	1
	._FPARAM	E
	._CONFIG	S, F, 1
	._LINE	0, 310
_Key_AD_Scan:
L_108:
	ST	R4,@-SP
	ST	RP,@-SP
	ENTER	#4
;-------end_of_no_optimize_block
	._FUNCTION	"fp", "fp", 40
	._CONFIG	S, B
L_109:				// Pred: L_108
	._LINE	0, 312
	LD	@(FP,8),R0	; _attr
	LDI	#0,R3
	ST	R3,@R0
	._LINE	0, 313
	LD	@(FP,8),R0	; _attr
	LDI	#4,R13
	ST	R3,@(R0,R13)
	._LINE	0, 315
	LDI:32	#_Key_AD_Curr,R2
	LD	@R2,R0	; _Key_AD_Curr
	CMP	#0,R0
	BEQ32	L_111,R12
L_110:				// Pred: L_109
	._LINE	0, 316
	._LINE	0, 317
	LDI:32	#_Key_AD_Curr+4,R4
	LD	@R4,R0	; _Key_AD_Curr
	CMP	#2,R0
	BNE32	L_113,R12
L_112:				// Pred: L_110
	._LINE	0, 318
	._LINE	0, 319
	LD	@R2,R1	; _Key_AD_Curr
	LD	@(FP,8),R0	; _attr
	ST	R1,@R0
	._LINE	0, 320
	LD	@R4,R0	; _Key_AD_Curr
	LD	@(FP,8),R1	; _attr
	ST	R0,@(R1,R13)
	._LINE	0, 321
	ST	R3,@R2	; _Key_AD_Curr
	._LINE	0, 322
	LDI	#1,R4
	BRA32	L_191,R12
L_113:				// Pred: L_110
	._LINE	0, 324
	LD	@R4,R0	; _Key_AD_Curr
	CMP	#4,R0
	BNE32	L_118,R12
L_117:				// Pred: L_113
	._LINE	0, 325
	._LINE	0, 326
	LD	@R2,R1	; _Key_AD_Curr
	LD	@(FP,8),R0	; _attr
	ST	R1,@R0
	._LINE	0, 327
	LD	@R4,R0	; _Key_AD_Curr
	LD	@(FP,8),R1	; _attr
	ST	R0,@(R1,R13)
	._LINE	0, 328
	ST	R3,@R2	; _Key_AD_Curr
	._LINE	0, 329
	LDI	#1,R4
	BRA32	L_191,R12
L_118:				// Pred: L_113
	._LINE	0, 331
	LD	@R4,R0	; _Key_AD_Curr
	CMP	#6,R0
	BNE32	L_122,R12
L_121:				// Pred: L_118
	._LINE	0, 332
	._LINE	0, 333
	LD	@R2,R0	; _Key_AD_Curr
	LD	@(FP,8),R1	; _attr
	ST	R0,@R1
	._LINE	0, 334
	LD	@R4,R1	; _Key_AD_Curr
	LD	@(FP,8),R0	; _attr
	ST	R1,@(R0,R13)
	._LINE	0, 335
	ST	R3,@R2	; _Key_AD_Curr
	._LINE	0, 336
	LDI	#1,R4
	BRA32	L_191,R12
L_122:				// Pred: L_118
	._LINE	0, 338
	LD	@R4,R0	; _Key_AD_Curr
	CMP	#3,R0
	BNE32	L_126,R12
L_125:				// Pred: L_122
	._LINE	0, 339
	._LINE	0, 340
	LD	@R2,R0	; _Key_AD_Curr
	LD	@(FP,8),R1	; _attr
	ST	R0,@R1
	._LINE	0, 341
	LD	@R4,R0	; _Key_AD_Curr
	LD	@(FP,8),R1	; _attr
	ST	R0,@(R1,R13)
	._LINE	0, 342
	ST	R3,@R2	; _Key_AD_Curr
	._LINE	0, 343
	LDI	#1,R4
	BRA32	L_191,R12
L_126:				// Pred: L_122
	._LINE	0, 345
	LD	@R4,R0	; _Key_AD_Curr
	CMP	#5,R0
	BNE32	L_130,R12
L_129:				// Pred: L_126
	._LINE	0, 346
	._LINE	0, 347
	LD	@R2,R0	; _Key_AD_Curr
	LD	@(FP,8),R1	; _attr
	ST	R0,@R1
	._LINE	0, 348
	LD	@R4,R0	; _Key_AD_Curr
	LD	@(FP,8),R1	; _attr
	ST	R0,@(R1,R13)
	._LINE	0, 349
	LDI	#0,R0
	ST	R0,@R2	; _Key_AD_Curr
	._LINE	0, 350
	LDI	#1,R4
	BRA32	L_191,R12
L_130:				// Pred: L_126
	._LINE	0, 352
	LD	@R4,R0	; _Key_AD_Curr
	CMP	#1,R0
	BNE32	L_134,R12
L_133:				// Pred: L_130
	._LINE	0, 353
	._LINE	0, 354
	LDI	#0,R4
	BRA32	L_191,R12
L_134:				// Pred: L_130
	._LINE	0, 357
	._LINE	0, 358
	LDI	#0,R4
	BRA32	L_191,R12
L_111:				// Pred: L_109
	._LINE	0, 360
	._LINE	0, 362
	._LINE	0, 364
	LDI	#0,R4
L_191:				// Pred: L_111 L_134 L_133 L_129
				//	 L_125 L_121 L_117 L_112
	._LINE	0, 364
L_114:				// Pred: L_191
	._LINE	0, 364
	._CONFIG	E
	._LINE	0, 365
	LEAVE
	LD	@SP+,RP
	ADDSP	#4
	RET
	._CONFIG	E
	._SYMBOL	"Key_AD_ValueBuf", V, 0x80000004, E, "_Key_AD_ValueBuf"
	._ARRAY	2, 1, 6, 0
	._SYMBOL	"Key_AD_ValueBufNum", V, 0x80000002, E, "_Key_AD_ValueBufNum"
	._SYMBOL	"KEY_IntoNum", V, 0x80000002, S, "_KEY_IntoNum"
	._SYMBOL	"KEY_AD_Data_Copy", V, 0x80000008, S, "_KEY_AD_Data_Copy"
	._SYMBOL	"Key_AD_Value", V, 0x80000004, E, "_Key_AD_Value"
	._ARRAY	2, 1, 2, 0
	._TYPED	C
	._SYMBOL	"Key_AD_Curr", V, 0x1a, E, "_Key_AD_Curr"
	._SYMBOL	"Key_AD_Handle", V, 0x14, E, "_Key_AD_Handle"
	._SYMBOL	"Key_Res_Data", V, 0x80000004, E, "_Key_Res_Data"
	._SYMBOL	"Key_ADC_Data", V, 0x80000004, E, "_Key_ADC_Data"
	._SYMBOL	"Key_AD_Timer_Flag", V, 0x80000002, E, "_Key_AD_Timer_Flag"
	.global	__subd
	.global	__muld
	.global	__divd
	.global	__dtoi
	.global	__dtof
	.global	__ftod
	.end	
